//
// Created by Alex on 2021/12/1.
//

#ifndef GEOMAP_GEOPOLYGON_H
#define GEOMAP_GEOPOLYGON_H
#include "GeoObject.h"
#include "LonLat.h"
#include "GeoStyle.h"
#include "QList"

class GeoPolygon :public GeoObject{
public:
    GeoPolygon();
    void addPoint(LonLat) override;
    void addProperties(QString,QVariant) override;
    QVariant getPropertiesValue(QString key) override;
    void setStyle(GeoStyle*) override;
    void getScale() override;
    QList<LonLat> getData();

    double getLineWidth();

    double getFillR();
    double getFillG();
    double getFillB();

    double getLineR();
    double getLineG();
    double getLineB();

private:
    QList<LonLat> pts;
    QMap<QString,QVariant> properties;
    GeoStyle *polygonStyle;
};


#endif //GEOMAP_GEOPOLYGON_H
